home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 25 / AACD 25.iso / AACD / Magazine / Online / QMail / source / prot.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-04-15  |  462 b   |  22 lines

  1. #include "hasshsgr.h"
  2. #include "prot.h"
  3.  
  4. /* XXX: there are more portability problems here waiting to leap out at me */
  5.  
  6. int prot_gid(gid) int gid;
  7. {
  8. #ifdef HASSHORTSETGROUPS
  9.   short x[2];
  10.   x[0] = gid; x[1] = 73; /* catch errors */
  11.   if (setgroups(1,x) == -1) return -1;
  12. #else
  13.   if (setgroups(1,&gid) == -1) return -1;
  14. #endif
  15.   return setgid(gid); /* _should_ be redundant, but on some systems it isn't */
  16. }
  17.  
  18. int prot_uid(uid) int uid;
  19. {
  20.   return setuid(uid);
  21. }
  22.